package com.ny.demo523;
import java.sql.*;
import java.util.Scanner;
//实现登录
public class LoginDemo {
    //    登录的思路：获取到用户名和密码。把用户名和密码交给数据库的sql语句进行匹配，如果有结果查询出来就登录成功。否则登录失败。
// 3.实现登录功能：sql语句：select * from users where username=1 and password=1
    public static void main(String[] args) throws ClassNotFoundException, SQLException {
        //    1.把连接数据库的信息存放在一个类中，SqlConnection,在该类中创建一个方法getCon()
        //    2.以后需要连接数据库，只需要调用该类的方法就可以了。
        Connection connection = SqlConnection.getCon();
        Scanner scanner = new Scanner(System.in);// 从键盘输入
        System.out.println("请输入用户名");
        String username = scanner.next();
        System.out.println("请输入密码");
        String password = scanner.next();
//        3.编写sql语句
        String sql = "select * from users where username=? and password=?";
//        4.执行sql语句
        PreparedStatement preparedStatement = connection.prepareStatement(sql);
//        给问号赋值。1表示第一个问号，输入的用户名给第一个问好。2表示第二个问号，输入的密码给第二个问号。
        preparedStatement.setString(1,username);
        preparedStatement.setString(2,password);
//        5.接收执行sql语句的结果,查询的结果是放在resultSet中的.
        ResultSet  resultSet = preparedStatement.executeQuery();
//        6.判断resultSet是否为空
        if (resultSet.next()){
//            把resultSet中的数据取出来。通过列名就可以获取,username = > username的值
            String name = resultSet.getString("username");
            String pwd = resultSet.getString("password");
            // 输入用户名和密码
            System.out.println("用户名是："+name);
            System.out.println("密码是："+pwd);
            System.out.println("登录成功");
        }
        else
            System.out.println("登录失败");
    }
}
